package com.star.config.repository.model;

import com.star.common.core.contract.BaseRepository;
import com.star.common.core.contract.Model;
import com.star.config.repository.service.UserTenantConfigRepository;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.time.LocalDateTime;

/**
 * 应用配置(UserTenantConfig)领域类
 *
 * @author zhouhengzhe
 * @since 2023-12-30 23:33:49
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = true)
public class UserTenantConfigBO extends Model {

    @Schema(description = "主键")
    private String id;
    @Schema(description = "创建时间")
    private LocalDateTime createTime;
    @Schema(description = "更新时间")
    private LocalDateTime updateTime;
    @Schema(description = "创建人编码")
    private String createBy;
    @Schema(description = "创建人")
    private String creator;
    @Schema(description = "更新人编码")
    private String updateBy;
    @Schema(description = "更新人")
    private String updater;
    @Schema(description = "应用ID")
    private String tenantId;
    @Schema(description = "应用名称")
    private String tenantName;
    @Schema(description = "客户端私钥")
    private String clientPrivateKey;
    @Schema(description = "客户端公钥")
    private String clientPublicKey;
    /**
     * 用于控制租户是否需要登录互斥 1:登录互斥
     **/
    @Schema(description = "用于控制租户是否需要登录互斥 1:登录互斥 0：允许不同设备登录")
    private Integer loginExclusionType;
    public static UserTenantConfigRepository repository() {
        return BaseRepository.of(UserTenantConfigBO.class);
    }
}
